home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / Tool Chest / Text / WASTE / WASTE 1.1.2 Distribution / Pseudo-UPI for THINK Pascal / Dialogs.p < prev    next >
Encoding:
Text File  |  1995-10-12  |  4.9 KB  |  210 lines  |  [TEXT/PJMM]

  1. unit Dialogs;
  2.  
  3. { Pascal Interface to the Macintosh Libraries }
  4.  
  5. { Copyright © Apple Computer Inc. }
  6. { All Rights Reserved }
  7.  
  8. { Adapted for use with THINK Pascal 4.0.x by Marco Piovanelli }
  9.  
  10. interface
  11.     uses
  12.         Types, Windows;
  13.  
  14.     const
  15.  
  16. { new, more standard names for dialog item constants }
  17.         kControlDialogItem = ctrlItem;
  18.         kButtonDialogItem = ctrlItem + btnCtrl;
  19.         kCheckBoxDialogITem = ctrlItem + chkCtrl;
  20.         kRadioButtonDialogItem = ctrlItem + radCtrl;
  21.         kResourceControlDialogItem = ctrlItem + resCtrl;
  22.         kStaticTextDialogItem = statText;
  23.         kEditTextDialogItem = editText;
  24.         kIconDialogItem = iconItem;
  25.         kPictureDialogItem = picItem;
  26.         kUserDialogItem = userItem;
  27.         kItemDisableBit = itemDisable;
  28.         kStdOkItemIndex = ok;
  29.         kStdCancelItemIndex = cancel;
  30.         kStopIcon = stopIcon;
  31.         kNoteIcon = noteIcon;
  32.         kCautionIcon = cautionIcon;
  33.  
  34.     type
  35.         DITLMethod = INTEGER;
  36.  
  37.  
  38.     const
  39.         overlayDITL = 0;
  40.         appendDITLRight = 1;
  41.         appendDITLBottom = 2;
  42.  
  43.  
  44.     type
  45.  
  46.         DialogPropertyTag = OSType;
  47.  
  48.         DialogRef = DialogPtr;
  49.  
  50.         SoundProcPtr = ProcPtr;  { PROCEDURE Sound(soundNumber: INTEGER); }
  51.         ModalFilterProcPtr = ProcPtr;  { FUNCTION ModalFilter(theDialog: DialogPtr; VAR theEvent: EventRecord; VAR itemHit: INTEGER): BOOLEAN; }
  52.         UserItemProcPtr = ProcPtr;  { PROCEDURE UserItem(theWindow: WindowPtr; itemNo: INTEGER); }
  53.         SoundUPP = UniversalProcPtr;
  54.         ModalFilterUPP = UniversalProcPtr;
  55.         UserItemUPP = UniversalProcPtr;
  56.  
  57.     const
  58.         uppSoundProcInfo = $00000080; { PROCEDURE (2 byte param); }
  59.         uppModalFilterProcInfo = $00000FD0; { FUNCTION (4 byte param, 4 byte param, 4 byte param): 1 byte result; }
  60.         uppUserItemProcInfo = $000002C0; { PROCEDURE (4 byte param, 2 byte param); }
  61.  
  62.     function NewSoundProc (userRoutine: SoundProcPtr): SoundUPP;
  63.     inline
  64.         $2E9F;
  65.  
  66.     function NewModalFilterProc (userRoutine: ModalFilterProcPtr): ModalFilterUPP;
  67.     inline
  68.         $2E9F;
  69.  
  70.     function NewUserItemProc (userRoutine: UserItemProcPtr): UserItemUPP;
  71.     inline
  72.         $2E9F;
  73.  
  74.     procedure CallSoundProc (soundNumber: INTEGER;
  75.                                     userRoutine: SoundUPP);
  76.     inline
  77.         $205F, $4E90;
  78.  
  79.     function CallModalFilterProc (theDialog: DialogPtr;
  80.                                     var theEvent: EventRecord;
  81.                                     var itemHit: INTEGER;
  82.                                     userRoutine: ModalFilterUPP): BOOLEAN;
  83.     inline
  84.         $205F, $4E90;
  85.  
  86.     procedure CallUserItemProc (theWindow: WindowPtr;
  87.                                     itemNo: INTEGER;
  88.                                     userRoutine: UserItemUPP);
  89.     inline
  90.         $205F, $4E90;
  91.  
  92.     type
  93.  
  94.         SelectionRange = record
  95.                 beginSelection: SInt16;
  96.                 endSelection: SInt16;
  97.             end;
  98.  
  99.     procedure GetDialogItem (theDialog: DialogRef;
  100.                                     itemNo: INTEGER;
  101.                                     var itemType: INTEGER;
  102.                                     var item: Handle;
  103.                                     var box: Rect);
  104.     inline
  105.         $A98D;
  106.  
  107.     procedure SetDialogItem (theDialog: DialogRef;
  108.                                     itemNo: INTEGER;
  109.                                     itemType: INTEGER;
  110.                                     item: Handle; {CONST}
  111.                                     var box: Rect);
  112.     inline
  113.         $A98E;
  114.  
  115.     procedure HideDialogItem (theDialog: DialogRef;
  116.                                     itemNo: INTEGER);
  117.     inline
  118.         $A827;
  119.  
  120.     procedure ShowDialogItem (theDialog: DialogRef;
  121.                                     itemNo: INTEGER);
  122.     inline
  123.         $A828;
  124.  
  125.     procedure SelectDialogItemText (theDialog: DialogRef;
  126.                                     itemNo: INTEGER;
  127.                                     strtSel: INTEGER;
  128.                                     endSel: INTEGER);
  129.     inline
  130.         $A97E;
  131.  
  132.     procedure GetDialogItemText (item: Handle;
  133.                                     var text: Str255);
  134.     inline
  135.         $A990;
  136.  
  137.     procedure SetDialogItemText (item: Handle;
  138.                                     text: ConstStr255Param);
  139.     inline
  140.         $A98F;
  141.  
  142.     function FindDialogItem (theDialog: DialogRef;
  143.                                     thePt: Point): INTEGER;
  144.     inline
  145.         $A984;
  146.  
  147.     function NewColorDialog (dStorage: univ Ptr; {CONST}
  148.                                     var boundsRect: Rect;
  149.                                     title: ConstStr255Param;
  150.                                     visible: BOOLEAN;
  151.                                     procID: INTEGER;
  152.                                     behind: WindowRef;
  153.                                     goAwayFlag: BOOLEAN;
  154.                                     refCon: LONGINT;
  155.                                     items: Handle): DialogRef;
  156.     inline
  157.         $AA4B;
  158.  
  159.     function GetAlertStage: INTEGER;
  160.     inline
  161.         $3EB8, $0A9A;            { move.w ACount, (sp) }
  162.  
  163.     procedure ResetAlertStage;
  164.     inline
  165.         $4278, $0A9A;            { clr.w ACount }
  166.  
  167.     procedure DialogCut (theDialog: DialogRef);
  168.     procedure DialogPaste (theDialog: DialogRef);
  169.     procedure DialogCopy (theDialog: DialogRef);
  170.     procedure DialogDelete (theDialog: DialogRef);
  171.     procedure SetDialogFont (value: INTEGER);
  172.     inline
  173.         $31DF, $0AFA;            { move.w (sp)+, DlgFont }
  174.  
  175.     function CountDITL (theDialog: DialogRef): Integer;
  176.     inline
  177.         $3F3C, $0403, $204F, $A08B, $5C4F, $3E80;
  178.  
  179.     procedure AppendDITL (theDialog: DialogRef;
  180.                                     theDITL: Handle;
  181.                                     method: DITLMethod);
  182.     inline
  183.         $3F3C, $0402, $204F, $A08B, $4FEF, $000C;
  184.  
  185.     procedure ShortenDITL (theDialog: DialogRef;
  186.                                     numberItems: Integer);
  187.     inline
  188.         $3F3C, $0404, $204F, $A08B, $504F;
  189.  
  190.     function GetStdFilterProc (var theProc: ModalFilterUPP): OSErr;
  191.     inline
  192.         $303C, $0203, $AA68;
  193.  
  194.     function SetDialogDefaultItem (theDialog: DialogRef;
  195.                                     newItem: INTEGER): OSErr;
  196.     inline
  197.         $303C, $0304, $AA68;
  198.  
  199.     function SetDialogCancelItem (theDialog: DialogRef;
  200.                                     newItem: INTEGER): OSErr;
  201.     inline
  202.         $303C, $0305, $AA68;
  203.  
  204.     function SetDialogTracksCursor (theDialog: DialogRef;
  205.                                     tracks: BOOLEAN): OSErr;
  206.     inline
  207.         $303C, $0306, $AA68;
  208.  
  209. implementation
  210. end.